package com.vcc.service.service;

import com.mybatisflex.core.paginate.Page;
import com.mybatisflex.core.service.IService;
import com.vcc.data.entity.Channel;
import com.vcc.service.boss.request.channel.BossChannelCreateRequest;
import com.vcc.service.boss.request.channel.BossChannelUpdateRequest;
import com.vcc.service.boss.response.channel.BossChannelResponse;

import java.util.List;

public interface ChannelService extends IService<Channel> {

    Boolean existsByCode(String code);

    Boolean createChannel(BossChannelCreateRequest request);

    Boolean updateChannel(BossChannelUpdateRequest request);

    Page<BossChannelResponse> paging(Integer pageNumber, Integer pageSize, String name, String code, Integer status);

    List<BossChannelResponse> listByChannel(Boolean hasShareAccount, String value);

    Channel getByCode(String code);
}
